To date, metropolitan networks and enterprise networks widely use the Ethernet ring structure to improve the reliability of the network, when a certain link on the ring is disconnected, it might recover the communication between nodes in ring network by immediately activating a backup link.
FIG. 1 shows a topology diagram of communication path when the link in an Ethernet ring network is intact, and as shown in FIG. 1, the Ethernet ring network consists of five nodes—A, B, C, D, and E—and five segmental links <A, B>, <B, C>, <C, D>, <D, E>, and <E, A>. Take the node A as a control node or master node, and the link <A, B> connecting with node A is a ring protection link (RPL). When the links on the ring are intact, the node A blocks its corresponding RPL <A, B> port, that is, port al, to prevent the generation of a ring. Flow between user 1 and user 2 is transmitted via the nodes A, E and D and the communication path formed by the links between these nodes.
When a certain node or link fails, the control node opens its corresponding RPL port so that the port can be used to forward data, thus guarantee the service connectivity. As shown in FIG. 2, when the link <D, E> detects a fault, the nodes D and E immediately block the failed ports d1 and e2, and the non-faulted ports, that is, d2 and e1, periodically send the corresponding protocol message to notify other nodes of the ring about the condition of this fault. After the control node A receives the protocol message, it starts up its own protection mechanism, opens the corresponding RPL port, and switches the traffic to the protection link, then the flow between the user 1 and the user 2 can be transmitted via the nodes A, B, C, D and the communication path formed by the links between these nodes. In order to achieve fast protection switching, after the other port nodes on the ring receive a protocol message related to fault, they refresh the MAC address.
There is a relatively accurate refreshing method in the existing MAC address refreshing mechanism: when an adjacent node of the failed link detects the link failure, it creates a delete address list (DAL) according to the port connecting to the failed link, that is, the failure port ID information, and clears the corresponding MAC address in its own forward database (FDB) according to the DAL, and then broadcasts or multicasts the protocol message carrying this DAL on the ring via the non-faulted port. After another of the nodes of the ring receives the protocol message carrying the DAL, it searches for the MAC addresses corresponding to the ports receiving the protocol message from its own FDB, matches the MAC addresses with the MAC addresses in the DAL, and if the match is successful, deletes the successfully-matched MAC address from the FDB.
The advantage of this MAC address refreshing approach is that it is relatively accurate, but there are two major drawbacks:
1, The DAL created by the adjacent node of the failed link contains all the MAC addresses corresponding to the fault port in the FDB of this node, if the faulted port has so many corresponding MAC addresses in the FDB that it exceeds the bearing capability of a protocol message frame, the protocol message needs to segment the DAL to carry;
2, after each node of the ring receives the protocol message, it needs to extract the DAL from the protocol message and matches the DAL with the MAC addresses corresponding to the port receiving the protocol message in its own FDB, and if the DAL carries a large number of MAC addresses, the matching time will be very long, which will result in a low MAC address refreshing rate of each node of the ring, thus significantly affect the convergence speed of the Ethernet ring network protection switching.